package com.lmf.mock.starter.autoconfigure.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.lmf.mock.starter.autoconfigure.entity.ProxyConfig;

import java.util.List;

/**
 * 代理配置服务接口
 */
public interface ProxyConfigService extends IService<ProxyConfig> {

    /**
     * 获取启用的代理配置
     */
    List<ProxyConfig> getEnabledConfigs();

    /**
     * 根据ID获取代理配置
     */
    ProxyConfig getConfigById(Long id);

    /**
     * 根据路径和方法获取代理配置
     */
    ProxyConfig getConfigByPathAndMethod(String path, String method);

    /**
     * 创建代理配置
     */
    ProxyConfig createConfig(ProxyConfig config);

    /**
     * 更新代理配置
     */
    ProxyConfig updateConfig(ProxyConfig config);

    /**
     * 删除代理配置
     */
    boolean deleteConfig(Long id);

    /**
     * 切换代理配置状态
     */
    boolean toggleConfigStatus(Long id);

    /**
     * 根据分组ID获取代理配置
     */
    List<ProxyConfig> getConfigsByGroupId(Long groupId);
}
